package com.sz.biz.common.contract.service;

import com.sz.biz.common.contract.entity.ContTemplate;
import com.sz.biz.common.contract.dto.ContTemplateDto;
import com.sz.common.base.dto.QueryParams;
import com.sz.common.base.dto.ResultDto;

import java.util.List;

/**
 * Package: com.sz.biz.common.contract.service<br>
 * Function: 合同模板service
 * Author: yanhong.xiao.<br>
 * Date: 2017-07-19 15:41:00.
 */
public interface ContTemplateService {
    /**
     * 保存合同模板
     *
     * @return
     */
    ContTemplate saveTemplate(ContTemplateDto templateDto);

    /**
     * 修改合同模板
     *
     * @param templateDto
     * @return
     */
    ContTemplate updateTemplate(ContTemplateDto templateDto);

    /**
     * 根据id获取模板基本信息
     *
     * @param id
     * @return
     */
    ContTemplate getById(Integer id);

    /**
     * 获取合同模板dto
     *
     * @param id
     * @return
     */
    ContTemplateDto getDtoById(Integer id);



    ResultDto findSimpleDtoPages(QueryParams params);

    void batchDeleteByIds(List<Integer> ids );

    List<ContTemplate> getLikeByName(String name);

    List<ContTemplate> getByIds(List<Integer> ids );

    ResultDto findMinDtoPages(QueryParams params);

    /**
     * 校验模板名称的唯一性
     * @param id
     * @param name
     * @return
     */
    boolean checkUniqueName(Integer id , String name);

}